\subsection{Introduction}
\begin{definition}
	Let \( U, V \) be \( F \)-vector spaces.
	Then \( \phi \colon U \times V \to F \) is a \textit{bilinear form} if it is linear in both components.
	For example, \( \phi \) at a fixed \( u \in U \) is a linear form \( V \to F \) and an element of \( V^\star \).
\end{definition}
\begin{example}
	Consider the map \( V \times V^\star \to F \) given by
	\[
		(v, \theta) \mapsto \theta(v)
	\]
\end{example}
\begin{example}
	The scalar product on \( U = V = \mathbb R^n \) is given by
	\[
		\psi(x, y) = \sum_{i=1}^n x_i y_i
	\]
\end{example}
\begin{example}
	Let \( U = V = C([0,1], \mathbb R) \) and consider
	\[
		\phi(f,g) = \int_0^1 f(t)g(t) \dd{t}
	\]
\end{example}
\begin{definition}
	If \( B = (e_1, \dots, e_m) \) is a basis of \( U \) and \( C = (f_1, \dots, f_n) \) is a basis of \( V \), and \( \phi \colon U \times V \to F \) is a bilinear form, then the matrix of the bilinear form in this basis is
	\[
		[\phi]_{B, C} = \qty( \phi(e_i, f_j) )_{1 \leq i \leq m, 1 \leq j \leq n}
	\]
\end{definition}
\begin{lemma}
	We can link \( \phi \) with its matrix in a given basis as follows.
	\[
		\phi(u,v) = [u]_B^\transpose [\phi]_{B, C} [v]_C
	\]
\end{lemma}
\begin{proof}
	Let \( u = \sum_{i=1}^m \lambda_i u_i \) and \( v = \sum_{j=1}^n \mu_j v_j \).
	Then
	\[
		\phi(u,v) = \phi\qty( \sum_{i=1}^m \lambda_i u_i, \sum_{j=1}^n \mu_j v_j ) = \sum_{i=1}^m \sum_{j=1}^n \lambda_i \mu_j \phi(u_i, v_j) = [u]_B^\transpose [\phi]_{B,C} [v]_C
	\]
\end{proof}
\begin{remark}
	Note that \( [\phi]_{B,C} \) is the only matrix such that \( \phi(u,v) = [u]_B^\transpose [\phi]_{B, C} [v]_C \).
\end{remark}
\begin{definition}
	Let \( \phi \colon U \times V \to F \) be a bilinear form.
	Then \( \phi \) induces two linear maps given by the partial application of a single parameter to the function.
	\[
		\phi_L \colon U \to V^\star;\quad \phi_L(u) \colon V \to F;\quad v \mapsto \phi(u,v)
	\]
	\[
		\phi_R \colon V \to U^\star;\quad \phi_R(v) \colon U \to F;\quad u \mapsto \phi(u,v)
	\]
	In particular,
	\[
		\phi_L(u)(v) = \phi(u,v) = \phi_R(v)(u)
	\]
\end{definition}
\begin{lemma}
	Let \( B = (e_1, \dots, e_m) \) be a basis of \( U \), and let \( B^\star = (\varepsilon_1, \dots, \varepsilon_m) \) be its dual; and let \( C = (f_1, \dots, f_n) \) be a basis of \( V \), and let \( C^\star = (\eta_1, \dots, \eta_n) \) be its dual.
	Let \( A = [\phi]_{B,C} \).
	Then
	\[
		[\phi_R]_{C, B^\star} = A;\quad [\phi_L]_{B, C^\star} = A^\transpose
	\]
\end{lemma}
\begin{proof}
	\[
		\phi_L(e_i)(f_j) = \phi(e_i, f_j) = A_{ij}
	\]
	Since \( \eta_j \) is the dual of \( f_j \),
	\[
		\phi_L(e_i) = \sum_i A_{ij} \eta_j
	\]
	Further,
	\[
		\phi_R(f_j)(e_i) = \phi(e_i, f_j) = A_{ij}
	\]
	and then similarly
	\[
		\phi_R(f_j) = \sum_i A_{ij} \varepsilon_i
	\]
\end{proof}
\begin{definition}
	\( \ker \phi_L \) is called the \textit{left kernel} of \( \phi \).
	\( \ker \phi_R \) is the \textit{right kernel} of \( \phi \).
\end{definition}
\begin{definition}
	We say that \( \phi \) is \textit{non-degenerate} if \( \ker \phi_L = \ker \phi_R = \qty{0} \).
	Otherwise, \( \phi \) is \textit{degenerate}.
\end{definition}
\begin{theorem}
	Let \( B \) be a basis of \( U \), and let \( C \) be a basis of \( V \), where \( U, V \) are finite-dimensional.
	Let \( \phi \colon U \times V \to F \) be a bilinear form.
	Let \( A = [\phi]_{B,C} \).
	Then, \( \phi \) is non-degenerate if and only if \( A \) is invertible.
\end{theorem}
\begin{corollary}
	If \( \phi \) is non-degenerate, then \( \dim U = \dim V \).
\end{corollary}
\begin{proof}
	Suppose \( \phi \) is non-degenerate.
	Then \( \ker \phi_L = \ker \phi_R = \qty{0} \).
	This is equivalent to saying that \( n(\phi_L) = n(\phi_R) = 0 \).
	We can use the rank-nullity theorem to state that \( r(A^\transpose) = \dim V \) and \( r(A) = \dim V \).
	This is equivalent to saying that \( A \) is invertible.
	Note that this forces \( \dim U = \dim V \).
\end{proof}
\begin{remark}
	The canonical example of a non-degenerate bilinear form is the scalar product \( \mathbb R^n \times \mathbb R^n \to \mathbb R \) represented by the identity matrix in the standard basis.
\end{remark}
\begin{corollary}
	If \( U \) and \( V \) are finite-dimensional with \( \dim U = \dim V \), then choosing a non-degenerate bilinear form \( \phi \colon U \times V \to F \) is equivalent to choosing an isomorphism \( \phi_L \colon U \simeq V^\star \).
\end{corollary}
\begin{definition}
	If \( T \subset U \), then we define
	\[
		T^\perp = \qty{ v \in V \colon \forall t \in T, \phi(t,v) = 0 }
	\]
	Further, if \( S \subset V \), we define
	\[
		^\perp S = \qty{ u \in U \colon \forall s \in S, \phi(u,s) = 0 }
	\]
	These are called the \textit{orthogonals} of \( T \) and \( S \).
\end{definition}

\subsection{Change of basis for bilinear forms}
\begin{proposition}
	Let \( B, B' \) be bases of \( U \) and \( P = [I]_{B', B} \), let \( C, C' \) be bases of \( V \) and \( Q = [I]_{C', C} \), and finally let \( \phi \colon U \times V \to F \) be a bilinear form.
	Then
	\[
		[\phi]_{B', C'} = P^\transpose [\phi]_{B,C} Q
	\]
\end{proposition}
\begin{proof}
	We have \( \phi(u,v) = [u]_B^\transpose [\phi]_{B,C} [v]_C \).
	Changing coordinates, we have
	\[
		\phi(u,v) = (P [u]_{B'})^\transpose [\phi]_{B,C} (Q [v]_{C'}) = [u]_{B'}^\transpose (P^\transpose [\phi]_{B,C} Q) [v]_{C'}
	\]
\end{proof}
\begin{lemma}
	The \textit{rank} of a bilinear form \( \phi \), denoted \( r(\phi) \) is the rank of any matrix representing \( \phi \).
	This quantity is well-defined.
\end{lemma}
\begin{remark}
	\( r(\phi) = r(\phi_R) = r(\phi_L) \), since \( r(A) = r(A^\transpose) \).
\end{remark}
\begin{proof}
	For any invertible matrices \( P, Q \), \( r(P^\transpose A Q) = r(A) \).
\end{proof}
